#ifndef PATIENTMODEL_H
#define PATIENTMODEL_H

#include <QAbstractListModel>
#include <QWidget>
#include <QPixmap>
#include <QVariant>
#include <QList>

struct PersonData
{

    QString first_name,lastname,name;//姓,名字
    QString create_time,age;//患者创建时间，年龄
    int gender ;//性别
    QString birthday;//生日
    QString phone;//电话
    QString email;//邮箱
    QString address;//地址
    QString annotation;//备注
};

class PatientModel : public QAbstractListModel
{
    Q_OBJECT
public:
    PatientModel(QObject* parent=nullptr);

    ///@brief 返回model所在的行
    int rowCount(const QModelIndex &parent = QModelIndex())const override ;

    ///@brief 返回所在的数据
    QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;

    ///@brief 从数据库加载数据
    void LoadFromDatabase(const QString& dp_path);

private:
    QList<PersonData> m_data;
};

#endif // PATIENTMODEL_H
